#ifndef RATIONNEL_H
#define RATIONNEL_H

#include "Constante.h"
#include "Entier.h"
#include "NonComplexe.h"
#include "DataException.h"

class rationnel : public noncomplexe
{
    int den;
        int num;
    public:
       // rationnel(int,int)throw(DataException);
        //rationnel(const entier& = entier(0),const entier& = entier(1))throw(DataException);

        constante* operator+(const constante&)const;
        constante* operator*(const constante&)const;
        constante* operator/(const constante&)const;
        constante* operator-(const constante&)const;
        constante* operator-()const;

        std::string print()const {
            std::stringstream ss;
            ss <<num<<" / "<< den;
            return ss.str();
        }

        int getDen()const {return den;}
        int getNum()const {return num;}

};

#endif // RATIONNEL_H
